home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The PC-SIG Library 9
/
The PC-SIG Library on CD ROM - Ninth Edition.iso
/
401_500
/
DISK0421
/
DISK0421.ZIP
/
RAMTEST.DOC
< prev
next >
Wrap
Text File
|
1985-02-25
|
9KB
|
288 lines
RAMTEST Page 1
WARNING
-------
Executing this program WILL destroy the contents of memory, in-
cluding RAM disks!
Now that you've been warned, I think you will find this program
useful, not only in identifying an existing fault, but also as
part of a periodic maintainence program. This program has been
developed as an exhaustive test of an IBM PC's system RAM. It is
much more comprehensive than the PC Power On Self Test (POST) and
delivers diagnostic messages which are much easier to understand.
To start the test, just type RAMTEST at the DOS prompt. There are
no additional parameters.
This test is best run from a floppy disk which has been formatted
using the /S option and contains no other RAM-based utilities.
Some of the commonly available memory-resident utilities (for ex-
ample, SIDEKICK from BORLAND) 'take command' of the system and
will cause RAMTEST to crash.
RAMTEST functions in several distinct phases. After signing-on,
RAMTEST starts searching for the top of contiguous memory. This
search is performed by examining RAM and not by consulting the
system configuration switches. Once the top of memory is found,
the actual testing portion of the program is relocated and test-
ing begins.
RAM is tested beginning with address 0:500 and continues up to
but not including the top 32k. These limits were chosen for the
following reasons. 1) BIOS uses RAM below 0:500 for scratch area
and RAMTEST uses BIOS exclusively for screen I/O. 2) The testing
program needs a place to live undisturbed.
RAM is tested in 32k blocks. The pattern for the test is taken
from the BIOS ROMs. Randomness is added by use of iteration count
to modify the data. During PASS 1, each RAM location is modified
and then verified. This insures that each location can be ac-
curately written to and read from. During PASS 2, each location
is re-read and compared to it's reference byte in ROM and the
parity bit is checked. This part of the test insures that the
parity generating and checking circuitry is functioning cor-
rectly, that the address decoding is working properly and that
there are no locations in RAM shorted to other locations.
Should no errors occur during the two passes, RAMTEST announces
the successful completion of the test and prompts you to turn off
the computer to stop the test. If not stopped, however, RAMTEST
will start over, using a different set of patterns each time.
Since some memory errors do not show up until after hours of
operating time, if you're trying to track down a failure, it is
suggested that you let RAMTEST run awhile, perhaps overnight.
Copyright (c) 1985 J & C Computer Services
RAMTEST Page 2
Should an error occur, RAMTEST stops immediately, displays a mes-
sage identifying the error, and halts. Note that the only way to
exit this condition is to turn the computer off. A typical error
message is:
Memory contents failure.
Address = 5000:0000
Data is: 1B Data should be: 1F
Turn power off, wait 5 seconds, and turn power back on.
The above example shows that the failure occured on an expansion
board (System memory extends to 0:FFFF on 64k motherboards, and
to 3000:FFFF on 256k motherboards. The presence of 4116 RAM chips
indicates a 64k motherboard.). It also shows that bit 1 was 0
when it should have been 1. In cases like this, the RAM chip in
the bit 1 position is frequently at fault. The RAM chips are the
most delicate components in the memory system, and the easiest to
test for defects. This is because the RAM chips are socketed (ex-
cept for the first 16k or 64k) and the rest of the chips such as
address decoding and data buffers are rarely, if ever, socketed.
The last two pages of this document diagram the location of the
RAM chips on the motherboard for both 64k systems and the 256k
systems. Refer to the documentation that came with your add-in
memory board for instructions on locating and replacing RAM chips
that make up the memory above 1000:0 (64k motherboard) or 4000:0
(256k motherboard).
The failure codes which are analyzed at the top of each page
refer to the code which the PC prints when an error is encoun-
tered during POST. If this occurs, the code will be printed, the
speaker will beep, the screen will go blank, and the computer
will have to be turned off. This will all happen in the span of
about one second, so watch carefully to see the error code.
RAMTEST is provided at no charge to the user. Feel free to share
it with your friends, but please do not give away altered ver-
sions or versions which have had the copyright notice removed.
The essence of 'user-supported' software is to provide personal
computer users with quality software without high prices, and yet
to provide incentive for programmers to continue to develop new
products. If you find this program useful, a contribution ($10
suggested) would be greatly appreciated. Any suggestions or com-
ments you may have are also welcome.
Jim Weisz
J & C Computer Services
P.O. Box 1356
Lombard, Il. 60148
Copyright (c) 1985 J & C Computer Services
RAMTEST Page 3
MEMORY FAILURE CODE ANALYSIS: 64k motherboard
SAMPLE FAILURE CODE: 4402 201
|||| |||
|||| +++---- SYSTEM CODE - INDICATES MEMORY FAILURE
||++-------- FAILED BIT - 00 INDICATES PARITY
|+---------- FAILED 16K BLOCK - 0, 4, 8, OR C
+----------- FAILED 64K SEGMENT
SYSTEM BOARD (Lower left corner when viewed from the front)
SEGMENT = 0000
BIT FIRST 2 DIGITS OF
ADDR P 0 1 2 3 4 5 6 7 ERROR CODE
0000 - 3FFF * * * * * * * * * 00 (This row is
soldered in.)
4000 - 7FFF * * * * * * * * * 00
8000 - BFFF * * * * * * * * * 00
C000 - FFFF * * * * * * * * * 00
SECOND 2
DIGITS OF 00 01 02 04 08 10 20 40 80
ERROR CODE
Copyright (c) 1985 J & C Computer Services
RAMTEST Page 4
MEMORY FAILURE CODE ANALYSIS: 256k motherboard
SAMPLE FAILURE CODE: 4402 201
|||| |||
|||| +++---- SYSTEM CODE - INDICATES MEMORY FAILURE
||++-------- FAILED BIT - 00 INDICATES PARITY
|+---------- FAILED 16K BLOCK - 0, 4, 8, OR C
+----------- FAILED 64K SEGMENT
SYSTEM BOARD (Lower left corner when viewed from the front)
BIT FIRST 2 DIGITS OF
SEGMENT P 0 1 2 3 4 5 6 7 ERROR CODE
0000 * * * * * * * * * 0x (This row is
soldered in.)
1000 * * * * * * * * * 1x
2000 * * * * * * * * * 2x
3000 * * * * * * * * * 3x
SECOND 2
DIGITS OF 00 01 02 04 08 10 20 40 80
ERROR CODE
Copyright (c) 1985 J & C Computer Services
ROR CODE
Copyright (c) 1985 J & C Computer Services